#pragma once
#include"rbtree.h"
namespace wang
{
	template<class K>
	class set
	{
	public:
		struct Setkot
		{
			const K& operator()(const K& key)
			{
				return key;
			}
		};
		typedef typename rbtree<K, pair<K, T>, Mapkot>::Iterator iterator;
		pair<iterator, bool> insert(const pair<K, T>& kv)
		{
			return _tree.insert(kv);
		}

		iterator find(const K& key)
		{
			return _tree.find(key);
		}
		iterator begin()
		{
			return _tree.Begin();
		}
		iterator end()
		{
			return nullptr;
		}

	private:
		rbtree<K, K, Setkot> _tree;
	};
}